/*
 * =====================================================================================
 *
 *       Filename:  main.cc
 *
 *    Description:  
 *
 *        Version:  1.0
 *        Created:  2022年01月20日 22时38分47秒
 *       Revision:  none
 *       Compiler:  gcc
 *
 *         Author:  first_name last_name (fl), fl@my-company.com
 *        Company:  my-company
 *
 * =====================================================================================
 */

#include <iostream>

using namespace std;

struct A {
    A(int i){} 
};

struct B : A {
    B(int i):A(i), d(i){}

    int d;
};

struct Base {
    void f(double i){
        cout << "Base:" << i << endl;
    }
};

struct Derived : Base {
    using Base::f;

    void f(int i){
        cout << "Deriverd:" << i << endl;
    }
};

int main () {
    Base b;
    b.f(4.5);

    Derived d;
    d.f(4.6);
    d.f(5);

    return 0;
}


